Large enterprises have a huge amount of data stored on remote systems, such as customer systems or mobile devices. Usually these enterprises want to query the remote systems for the remote data. Typically, the data from all the remote systems are transferred to a central system, located at the enterprise, which is then queried for the remote data. However, downloading the remote data to the central system causes a huge data load at the central system which is undesirable.
Furthermore, remote systems may store data in distributed databases which allow the enterprise to query the remote data at the remote system itself. However, distributed databases are defined by strict rules (12+1 rule) such as: availability: all the remote systems should be “live” when the query is sent to the remote systems, consistency: whenever the remote data is changed in one of the distributed database the change should be updated in other distributed databases as well, etc.
In some cases, the query sent to the remote systems might be statistical in nature, which does not require the remote data, stored at the remote systems, to be defined by such strict rules. Therefore, there is a need for a system and method that allows enterprises to easily query data stored in remote systems.